
package Model.dao;

import Model.Entidades.Compra;
import java.util.Collection;
import javax.persistence.EntityManager;
import javax.persistence.Query;

public class CompraDAO {
    private EntityManager em;
    public CompraDAO(EntityManager em){
        this.em = em;
    }
    
    public Compra salvar(Compra i) throws Exception{
        if(i.getId() == null)
            em.persist(i);
        else{
            if(!em.contains(i)){
                if(em.find(Compra.class, i.getId()) == null){
                    throw new Exception("Erro ao atualizar dados, Compra não existe.");
                }
            }
            i = em.merge(i);
        }
        return i;
    }
    public Compra buscaPorId(Integer id){
        return em.find(Compra.class, id);
    }
    
    public Collection<Compra> buscaTodosCompras(){
        Query query = em.createQuery("SELECT * FROM compra");
        return (Collection<Compra>) query.getResultList();
    }
    
    
    public void remover(Integer id){
            em.remove(id);
            
    }
}
